Helmet dispensing system

ABSTRACT

The present disclosure provides systems and methods for the dispensing and collection of objects in urban environments. More particularly, the disclosure provides systems and methods for dispensing and collecting helmets. The disclosure provides a self-sufficient, high-capacity, helmet dispensing system. In some embodiments, the system includes solar panels that provide the system with the requisite power needed to power the system. In some implementations, the system includes a vandal resistant return mechanism for the helmets. The system may also include communication modules, which may transmit system information to a backend server.

CROSS REFERENCE TO RELATED APPLICATION

This application claims the benefit of and priority to U.S. ProvisionalPatent Application No. 61/842,711, filed on Jul. 3, 2013 and titled“HELMET DISPENSING SYSTEM,” which is incorporated herein by reference inits entirety.

BACKGROUND OF THE DISCLOSURE

Bike share programs are increasing in popularity in many urbanenvironments. The bike share programs often include a distributednetwork of self-service pickup and drop off locations. Users may pick upa bike from one of the locations on an as-needed basis and return thebike to any of the locations within the network. Unfortunately, usersoften do not have access to helmets when picking up a bike from one ofthe locations, and the distributed nature of the locations makes itimpractical to have manned kiosks at each of the locations to renthelmets to users.

SUMMARY OF THE DISCLOSURE

The present disclosure provides systems and methods for the dispensingand collection of objects in urban environments. More particularly, thedisclosure provides systems and methods for dispensing and collectinghelmets. The disclosure provides a self-sufficient, high-capacity,helmet dispensing system and a backend system for the management of thedispensing systems and the inventory stored therein.

According to another aspect of the disclosure, a system includes adispensing unit. The dispensing unit can include one or more verticalrods configured to store helmets in a vertical arrangement. Each of theone or more vertical rods can include a first shaft configured to slidethrough an opening in a helmet. The first shaft can define a hollow coreand include a first actuating coupler, a second actuating coupler, and acollar. The collar can couple the first actuating coupler with thesecond actuating coupler. The system can also include a second shaftdisposed within the hollow core of the first shaft and coupled with thecollar of the first shaft. The system can also include an actuatorcoupled to the second shaft. The actuator can be configured to drive thecollar toward the second actuating coupler to deploy the secondactuating coupler and to retract the first actuating coupler and theactuator can be configured to drive the collar toward the firstactuating coupler to deploy the first actuating coupler and to retractthe second actuating coupler.

In some implementations, the system can include a quick releasemechanism coupling each of the one or more vertical rods to thedispensing unit. Each of the first and second actuating couplers caninclude a plurality of leafs that deploy substantially non-parallel tothe first shaft to limit the movement of the helmet along the firstshaft. Each of the first and second actuating couplers can include atleast one fluke that deploys to limit the movement of the helmet alongthe first shaft.

In some implementations, the dispensing unit further can include atleast three vertical rods. Each of the vertical rods can hold at leastsix helmets. The actuator can be a solenoid or a servo. In someimplementations, the vertical rods can include a RFID reader to identifyeach of the stored helmets. The vertical rods can support a helmetbetween the first and second actuating couplers.

According to yet another aspect of the disclosure, a method ofdispensing a helmet can include storing a plurality of helmets in adispensing unit. The dispensing unit can include one or more verticalrods configured to store helmets in a vertical arrangement. Each of theone or more vertical rods can include a first actuating coupler and acollar. The collar can couple the first actuating coupler with thesecond actuating coupler. The method can also include receiving, by thedispensing unit, a signal to dispense a helmet, and driving the collartoward the first actuating coupler to release the helmet.

In some implementations, the method also includes driving the collartoward a second actuating coupler to load the helmet into a stagingarea. The method can include determining, by the dispensing unit, anidentification number of the helmet when the helmet is in the stagingarea.

In some implementations, the dispensing unit can be refilled byreplacing at least one of the one or more vertical rods with a newvertical rod stocked with helmets. The method can include transmittingto a server an indication that the helmet was dispensed, an indicationwhen a number of helmets stored in the dispensing unit is below apredetermined threshold, or an indication when a number of helmetsreturned to the system is above a second threshold.

In some implementations, the method can include receiving the signalfrom a bike sharing system. The method may also include driving thecollar toward the second actuating coupler with a solenoid or a servo.Driving the collar toward the second actuating coupler can deploy thesecond actuating coupler. Driving the collar toward the second actuatingcoupler can retract the first actuating coupler.

BRIEF DESCRIPTION OF THE DRAWINGS

The skilled artisan will understand that the figures, described herein,are for illustration purposes only. It is to be understood that in someinstances various aspects of the described implementations may be shownexaggerated or enlarged to facilitate an understanding of the describedimplementations. In the drawings, like reference characters generallyrefer to like features, functionally similar and/or structurally similarelements throughout the various drawings. The drawings are notnecessarily to scale, emphasis instead being placed upon illustratingthe principles of the teachings. The drawings are not intended to limitthe scope of the present teachings in any way. The system and method maybe better understood from the following illustrative description withreference to the following drawings in which:

FIG. 1 is a block diagram of an example system for renting helmets, inaccordance with an implementation of the present disclosure;

FIGS. 2A, 2B and 3 illustrate different views of an example embodimentof the kiosk for use in the system of FIG. 1, in accordance with animplementation of the present disclosure;

FIG. 4 illustrates a flow diagram of an example method for dispensing ahelmet from a helmet rental kiosk, in accordance with an implementationof the present disclosure;

FIG. 5A illustrates an example rod and driver mechanism with quickrelease for use in a helmet rental kiosk, in accordance with animplementation of the present disclosure;

FIG. 5B illustrates example dispensing unit, in accordance with animplementation of the present disclosure;

FIG. 6 illustrates two helmets positioned on the lower end of adispensing rod, in accordance with an implementation of the presentdisclosure;

FIGS. 7A-7C illustrate example embodiments of a release mechanism, inaccordance with an implementation of the present disclosure;

FIGS. 8A-8B illustrate another example embodiment of a releasemechanism, in accordance with an implementation of the presentdisclosure;

FIG. 9 is a flow diagram of an example method for dispensing a helmetfrom a rental kiosk, in accordance with an implementation of the presentdisclosure;

FIG. 10A is a block diagram depicting an embodiment of a networkenvironment comprising client device in communication with serverdevice;

FIG. 10B is a block diagram depicting a cloud computing environmentcomprising client device in communication with cloud service providers;

FIGS. 10C and 10D are block diagrams depicting embodiments of computingdevices useful in connection with the methods and systems describedherein.

DETAILED DESCRIPTION

The various concepts introduced above and discussed in greater detailbelow may be implemented in any of numerous ways, as the describedconcepts are not limited to any particular manner of implementation.Examples of specific implementations and applications are providedprimarily for illustrative purposes.

For purposes of reading the description of the various embodimentsbelow, the following descriptions of the sections of the specificationand their respective contents may be helpful:

Section A describes embodiments of systems and methods for dispensinghelmets with a helmet rental kiosk

Section B describes a release mechanism for use with a helmet rentalkiosk.

Section C describes a network environment and computing environmentwhich may be useful for practicing embodiments described herein.

The disclosure presents systems and methods for dispensing andcollecting helmets. Bike share programs are becoming more prevalent inmetropolitan areas. Unfortunately, due to a user's spontaneous use ofthe bikes in the bike share program, users may rarely have access to ahelmet when riding a bike share bike. The present disclosure presentssystems that may be positioned at a bike share station. Users may checkout a helmet from the system when renting a bike share bike. The usersmay then return the helmet at a later date. In general the system mayinclude several subsystems. These subsystems may include a dispensingsystem, and return system, and a backend system.

A. Systems and Methods for Dispensing Helmets with a Helmet Rental Kiosk

FIG. 1 is a block diagram of an example system 100 for renting helmets.As an overview, the system 100 can include a helmet rental kiosk 102 (orsimply kiosk 102), which can be coupled with a bike share system 104.The kiosk 102 can communicate with a backend server 106 via a network108. The controller 110 of the kiosk 102 can control the operation ofthe kiosk 102, such as the release of a helmet. The kiosk 102 caninclude a dispensing unit 112 to dispense helmets to users and a returnsystem 114 where the user can return the helmet after use. The user mayinteract with the kiosk 102 through a display 116. The kiosk 102 caninclude a power system 120 that can be independent of city or externalpower systems. The kiosk 102 can also include a communications (TX/RX)module 118 that can enable the kiosk 102 to communicate with the backendserver 106 and other devices.

The system 100 can also include a backend server 106. The backend server106 can include an inventory database 122. The backend server 106 maytrack the use and availability of helmets by storing relevantinformation in the inventory database 122. The backend server 106 maystore kiosk IDs 124, rod IDs 126, and helmet IDs 128. The inventorytracking module 130 may reference the data stored in the inventorydatabase 122 to determine the inventory of the kiosk 102. The backendserver 106 may also include a usage analysis module 132 and anotification system 134. The backend server 106 may also include apayment system 136 for processing the rental transactions. In someimplementations, one or more of the components of the backend server 106may be included as a component of the kiosk 102. For example, the one ormore of the components of the backend server 106 may be a softwareapplication that is stored in a computer readable medium associated withthe controller 110. The controller 110 may execute the application toperform the functions of the components.

Referring to FIG. 1 in greater detail, the system 100 can include akiosk 102. The mechanics of the kiosk 102 are described below, butbriefly, the kiosk 102 can include a plurality of subsystems to enablethe rental of helmets. The kiosk 102 can include a controller 110. Thecontroller 110 can include one or more processors that implement machineexecutable instructions to perform the methods described herein. The oneor more processors may by any type of single or multi-core processorcapable of executing machine readable instructions. For example, thecontroller 110 may be a computer or programmable processor. Thecontroller 110 may include special purpose logic circuitry such as afield programmable gate array (FPGA) or an ASIC.

The kiosk 102 may also include a display 116. In some implementations, auser may interact with the kiosk 102 using the display 116. For example,the display 116 may be a touch screen or a display surrounded by aplurality of physical buttons. Using the buttons, whether physical orpart of a graphical user interface (GUI), the user may select, pay forthe rental of a helmet, and return the helmet. In some implementations,the display 116 can be used by a technician to determine how manyhelmets the kiosk 102 currently has available for rental or to viewstatus information of the kiosk 102. For example, the display 116 may beused to display battery levels and maintenance needs to a technician.When not being actively used by a user to rent a helmet, the display 116may display ads or other information. For example, the display 116 maydisplay information about where other kiosks 102 can be found in town.

The kiosk 102 can also include a power system 120. The power system 120can be configured to power the various components of the kiosk 102. Insome implementations, the power system 120 is an AC power supply thatreceives electrical power from a mains supply or other outlet. The powersystem 120 may include a DC converter to convert the supplied AC powerinto DC power for the controller 110 and other components of the kiosk102. In other implementations, the power system 120 can include one ormore batteries that power the kiosk 102. The batteries may be used as aprimary source of power or may be used as back up if the primary powersource fails. The power system 120 may include one or more solar panels.In some embodiments, the solar panels may be placed on the top or sidesof the kiosk 102. The solar panels may charge a set of batteries housedin the kiosk 102. The batteries may then power the various electronicsof the kiosk 102. In some implementations, the solar panels may generateenough electricity to fully power the kiosk 102. The batteries chargedby the solar panels may be configured to power the kiosk 102independently for between 1 and 15 days (e.g., the batteries may powerthe kiosk 102 even after seven consecutive days of cloudy weatherprevented the solar panels from generating a substantial amount ofelectricity). In some implementations, the power system 120 may beconfigured to include a plurality of power systems (e.g., solar and ACpower) that can be selected based on predetermined conditions. Forexample, if the kiosk 102 is placed in a sunny park the kiosk 102 mayrun on energy gathered by the solar panels. In another example, thepower system 120 may be placed near a building and have relatively easyaccess to AC power. In this example, the power system 120 may use ACpower to power its systems.

The kiosk 102 can also include a communications module 118. The kiosk102 can communicate with other devices and the server 106 through thecommunications module 118. The communications module 118 can enable thekiosk 102 to communicate with devices over the network 108 using wiredor wireless communication protocols. For example, the communicationsmodule 118 enable the kiosk 102 to communicate with other devices overRS-232, phone lines, powerlines, Ethernet, WiFi, Bluetooth, WiMAX, 3G,4G, cellular networks, or a combination thereof. In someimplementations, costs of the kiosk 102 can be reduced by moving somesystems from the kiosk 102 to the backend server 106—for example, thepayment system 136 and the inventory tracking module 130. In thisexample, the kiosk 102 may not track its inventory, but relays anindication, via the communications module 118, of a rental to thebackend server 106 each time a helmet is rented, and the backend server106 maintains the inventory information for the kiosk 102. In someimplementations, the communications module 118 may transmit indicationsof its real-time inventory to the server 106, such that a technician mayview the kiosk's inventory. The kiosk 102 may also transmit indicationsof its stock of returned helmets or directly alert a technician when thenumber of returned helmets has reached (or rises above) a predeterminedthreshold so that the technician may remove the returned helmets fromthe kiosk 102 for cleaning. The kiosk 102 can also directly (orindirectly through the server) notify a technician if the inventory ofhelmets in the kiosk 102 drops below a predetermined level.

The kiosk 102 can also include a dispensing unit 112 and a return system114. The dispensing unit 112 and the return system 114 are described ingreater detail below, but briefly, the dispensing unit 112 stores thehelmets prior to the rental of the helmet. In some implementations, thedispensing unit 112 includes a plurality of rods on which the helmetsare vertically stacked. When a user rents a helmet from the kiosk 102,the dispensing unit 112 releases one helmet from one of the plurality ofrods. The user may return the helmet to the kiosk 102 via the returnsystem 114. In some implementations, the return system 114 is a draweror other return receptacle. In some implementations, the return system114 can be configured to only accept helmets such that trash and otherdebris cannot enter the kiosk 102.

Still referring to FIG. 1, the system 100 can include a backend server.The backend server 106 can include an inventory database 122 formanaging and tracking the inventory of the kiosk 102.

Each of the kiosks 102 may be associated with a kiosk ID 124. Each kioskID 124 can be associated with a plurality of rod IDS 126, which in turncan each be associated with a plurality of helmet IDS 128. The datastored in the inventory database 122 can be maintained by the inventorytracking module 130. The inventory tracking module 130 can receive anindication from the kiosk 102 when a helmet is rented or returned. Theindication may include the kiosk ID 124, a rod ID 126, a helmet ID 128,a user ID, a timestamp or any combination thereof. When a helmet isreturned, the inventory tracking module 130 may receive an indicationfrom the kiosk 102 and mark the corresponding helmet as returned.

The backend server 106 can also include a usage analysis module 132 thatcan track the usage of each kiosk 102. In some implementations, theusage analysis module 132 can generate usage reports. The usage reportscan indicate kiosk 102 statistics, such as, how many helmets a specifickiosk 102 rents out over a given time period, how many helmets arecurrently available for rent in a given area, and which kiosk 102generates the most business when compared to the other kiosks located inthe same city. The usage analysis module 132 may also monitor theoperation of the kiosk 102 and alert a technician if the usage analysismodule 132 detects a fault with a kiosk 102. The usage analysis module132, through the notification system 134, can send notifications whenthe inventory in a kiosk 102 (or when the combined inventory of aplurality of kiosks 102) falls below a predetermined number and needs tobe refilled. In some implementations, the notifications generated by thenotification system 134 can include an email, SMS, or push notification.The usage analysis module 132 may also track the use of helmets in thesystem 100. For example, the usage analysis module 132 may indicate thehelmets should be removed from the system 100 after being used apredetermined number of times.

The backend server 106 can also include a payment system 136. Thepayment system 136 can handle the processing of credit cards and debitcards when a helmet is checked out from a kiosk 102. For example, a usermay enter their credit card information at the display 116 of the kiosk102. The information may be transmitted to the payment system 136 whereit is processed and the user's account is debited. In someimplementations, the user may purchase a monthly subscription to thesystem 100. For example, users may be able to create accounts associatedwith the kiosk 102. In some embodiments, the user may be able toassociate a method of payment (e.g. a credit card) with the user'saccount such that the user's method of payment is automatically debitedby the payment system 136 when the user rents a helmet. In this example,the user may input a user name or code via the display 116, which istransmitted back to the payment system 136. The payment system 136 maydetermine the validity of the user's subscription and, if valid,indicate to the kiosk 102 that the kiosk 102 should release a helmet tothe user. In another implementation, the rental of the helmet may beincluded with the rental of a bike from a bike share system 104. In thisexample, the bike share system 104 may transmit an indication to thepayment system 136 that the kiosk 102 should release a helmet to theuser. The kiosk 102 may provide the bike share system 104 with an APIthat enables the bike share system 104 to communicate with the kiosk 102or server 106. In some implementations, the bike share system 104 caninterface with the controller 110 of the kiosk 102 to have the kiosk 102release a helmet to the user without first sending the request to thepayment system 136. In some implementations, if the user does not returna rented helmet at the predetermined time or if the helmet is returneddamaged, the payment system 136 may charge a fee to the user's creditcard. In some implementations, the payment system 136 debits the usersaccount when the helmet is rented, and in other implementations thepayment system debits the users account after the helmet is returned.

FIGS. 2A and 2B illustrate an example embodiment of the kiosk 102. Thekiosk 102 stores, dispenses, and receives helmets. The exterior of thekiosk 102 may include a display panel 202 within each of the side doors201. Power for the kiosk 102 may be supplied and/or augmented by a solarpanel within the roof 203 of the kiosk 102. The kiosk 102 may house aplurality of vertical rods 204 (also referred to as rods 204) on whichhelmets may be vertically stacked. The helmets can be dispensed to auser after released from a rod 204 though a dispensing and return drawer205. In some implementations, the kiosk 102 includes a drawer (orreceptacle) for dispensing the helmets and a drawer (or receptacle) forreceiving helmets. The user can open the return drawer 205 by pulling onthe handle 206. The kiosk 102 may sit atop a base 207. FIG. 2Billustrates the same kiosk 102, but with a side door 201 removed toexpose the interior of the kiosk 102. FIG. 2B illustrates that a quickrelease mechanism and a driver 208 is coupled to teach of the rods 204.In some implementations, the kiosk 102 can include a chute that directsa released helmet into the drawer 205.

Referring to FIG. 2A in greater detail, the kiosk 102 can include aplurality of display panels 202. For example, the kiosk 102 may includea display panel 202 on the front, back, and two sides. The display panel202 may be used to display information to users, such as pricinginformation. The display panel 202 may be used to attract potentialcustomers. The display panel 202 may house a printed poster or decal.For example, the display panel 202 may be used to display ads for whichthe owner of the kiosk 102 receives revenue. In other embodiments, thedisplay panel 202 may be used to display information such as locationsin town where additional kiosk 102 are placed, a map indicating placesof interest, and/or a map indicating roads with biking lanes. In otherembodiments, one or more of the display panel 202 may be LCD screens.

The kiosk 102 can also include a base 207. The base 207 may be a supportplatform that positions the display panel 202 at a comfortable viewingheight for the user. In some implementations, the base 207 may be madetaller or shorter to accommodate smaller or larger kiosks 102. Forexample, the body of a first kiosk may be taller to accommodate morehelmets. The base 207 for this first example kiosk may be shorter suchthat the display panel 202 remains at an appropriate viewing height forthe user and such that the overall height of the kiosk 102 is not toohigh. As described above, the kiosk 102 may include a set of batteriesto power the kiosk 102. In some implementations, the set of batteriesmay be stored in the base 207. In some embodiments, the base 207 mayinclude storage for the returned helmets. Counter weights may be storedin the base 207 to ensure the kiosk 102 is not top heavy. In someimplementations, the set of batteries may act as the counter weights.The base 207 may be secured to a sidewalk or other physical structuresuch that the kiosk 102 cannot be stolen or improperly moved. In someimplementations, the base 207 can be configured to couple with a bikeshare system kiosk.

The kiosk 102 can also include a plurality of vertical rods 204. Therods 204 can each store a plurality of helmets in a vertical stackingarrangement. The vertical stacking arrangement can be an efficientpacking arrangement of the helmets that enables the kiosk 102 to store alarge number of helmets. Each rod 204 is part of the dispensing unit ofthe kiosk 102. The dispensing unit can hold between 3 and 15 rods 204 incompartment 209, depending on the capacity needs of the kiosk 102. Thekiosk 102 illustrated in FIG. 2A is configured to hold 5 rods 204. Eachrod 204 includes a release mechanism that is configured to release onehelmet at a time. In some implementations, the capacity of the kiosk canbe increased by adding additional rods 204 and/or by elongating the rods204 such that they may hold more helmets. In some implementations, thesize of the compartment 209 is increased to accommodate more or longerrods 204. The helmets are vertically stacked on the rods 204 by slidingthe rods 204 through a vent hole in each of the helmets. In a verticalstacking arrangement, the helmet on the bottom of the stack is held inplace by the release mechanism. The other helmets sit atop (e.g., arestacked on) the helmet immediately below the particular helmet in thevertical arrangement. When the helmet at the bottom of the stack isreleased each of the helmets in the vertical arrangement fall down oneslot and the helmet now at the bottom of the rod 204 is caught and heldin place by the release mechanism. In some implementations, each of therods 204 are configured to hold between 5 and 15 helmets.

The kiosk 102 can also include a dispensing and return drawer 205. Thedrawer 205 may be designed to accept the helmets associated with thekiosk 102 but make it difficult to place items other than the approvedhelmets into the drawer 205. For example, the drawer 205 may be designedwith a grated bottom such that trash and other debris cannot easily beplaced in the drawer 205. In some embodiments, drawer 205 may beconfigured such that a helmet must be positioned in a predeterminedmanner to be accepted by the drawer 205. For example, the drawer 205 maybe configured such that a helmet must be placed right side up and facingforward before it can be placed in the drawer 205. Aligning the helmetin a predetermined fashion in the return drawer 205 may facilitate thereturn process in some implementations. In some implementations, thedrawer 205 may be configured for both the dispensing and return ofhelmets. In other implementations, the kiosk 102 may include a firstdrawer for dispensing helmets and a second drawer for the return ofhelmets.

FIG. 2B illustrates the interior of the kiosk 102. Each of the rods 204can be coupled to a quick release mechanism 208. The quick releasemechanism 208 can include the actuator that drives the release mechanismin each of the rods 204. The actuator can be a motor, servo, solenoidvalve, or other transducer capable of driving the release mechanism. Insome embodiments, the rods 204 are reversibly coupled to the quickrelease mechanism 208. The rods 204 may be reversibly coupled to thequick release mechanism 208 such that a technician may quickly removethe rods 204 from the kiosk 102. In this example, the kiosk 102 may be“refilled” by decoupling a rod 204 and replacing the rod 204 with a newrod 204, preloaded with helmets. This may enable a technician to arriveat the kiosk 102, open one of the side doors 201, and quickly refill thekiosk 102 with prefilled rods 204. In other implementations, the rods204 may be permanently coupled to the quick release mechanism 208 andthe kiosk 102 may be refilled by sliding helmets onto each of the rods204, while the technical is at the kiosk 102.

FIG. 3 illustrates a front view of the example kiosk 102. The front viewof the kiosk 102 reveals a transaction panel 301, which includes thedisplay 116 and a credit card reader 302. The transaction panel 301 mayinclude a plurality of buttons that allow a user to interact with thekiosk 102. Example interactions a user can have with the kiosk 102 viathe transaction panel 301 may include, but are not limited to, checkingin a helmet, checking out a helmet, checking the availability ofhelmets, and finding other locations where the user may check in/out ahelmet.

The transaction panel 301 may also include the credit card reader 302.In some embodiments, the credit card reader 302 may be configured toread any type of magnetic stripped card—for example a credit card or amembership card associated with the kiosk 102. The transaction panel 301may also include a radio-frequency identification (RFID) module (notpictured). The RFID module may allow users may check out (or in) helmetsfrom the kiosk 102 by using an RFID enabled card or fob. The electronicsof the transaction panel 301 may also house the controller 110 and thecommunications module 118 for the kiosk 102.

FIG. 4 illustrates a flow diagram of an example method 400 fordispensing a helmet from a helmet rental kiosk. The method 400 caninclude providing a kiosk (step 401). A determination is made todispense a helmet (step 402). A signal can then be transmitted to thedispensing system of the kiosk to release the helmet (step 403).Responsive to receiving the signal, the dispensing system releases thehelmet (step 404).

As set for the above, the method 400 can include providing a kiosk (step401). The kiosk can be similar to the above described kiosk 102 in FIGS.1-3. The kiosk can include an interface to receive a request for ahelmet. The interface can be part of the above described transactionpanel 301 with a display 116 where the user can enter a request for ahelmet. In some implementations, the request may be received from a bikeshare program. For example, a user may rent a bike from a bike shareprogram. When renting the bike, the bike share program kiosk may ask theuser if the user would also like to include the rental of a helmet. Ifthe user decides to also rent a helmet, the bike share program may senda request to the kiosk to initial a helmet rental. In another example, auser may request a helmet from the kiosk using a mobile phone. Forexample, when at the kiosk, the user may visit a webpage associated withthe kiosk on the user's mobile phone. Using the website, the user mayrequest a helmet. As described above, the helmet can store a pluralityof helmets for rental and also receive helmets after the rental periodis over. The helmets may be stored in a vertical arrangement on one ormore rods within the dispensing system.

At step 402, the kiosk can determine to dispense the helmet. Thedetermination to dispense a helmet may be made in response to receivingthe request in step 401. In some implementations, the determination ismade responsive to an authorization. For example, the user may be amember of a subscription service that allows the user to rent apredetermined number of helmets each month. At a kiosk, the user mayrequest a helmet, the controller of the kiosk may check with the serverto determine if the user's subscription is still active beforedispensing the helmet. In another example, the authorization may begiven responsive to the successful charging of a user's payment system(e.g., credit card) by the payment system 136.

At step 403, the controller of the kiosk may then transmit a signal torelease a helmet. Responsive to determining that a helmet should bereleased, the controller can send a signal to the dispensing unit thatthen controls the release mechanism of a rod to release a helmet. Thesignal may be an electrical signal that activates, or causes theactivation, of a release mechanism in one of the rods. For example, thesignal may be an electrical signal that throws a relay, powering asolenoid coupled with the release mechanism. In other implementations,the signal may be an electrical signal that includes digital informationsuch as from which rod the helmet may be released. The signal may bereceived by a controller in the dispensing unit that interprets thedigital information in the signal and activates a release mechanism asinstructed by the signal. In some implementations, the signal to releasea helmet may arrive at the release mechanism, having originated with aserver or bike share program. For example the kiosk may have an API thatenables a bike share program to interface with and control the kiosk.

At step 404, the kiosk may then release the helmet to the user. Thesignal may trigger a release mechanism of one of the rods to release ahelmet. In some implementations, the rods include a staging area wherethe helmets are placed prior to release. In some implementations, thehelmet may include an RFID chip that can be scanned by the dispensingunit to enable the kiosk to track and inventory the helmet. In otherimplementations, the kiosk may determine which helmet was released byknowing the order of the helmets on each of the rods. For example, kioskmay know that rod A contains helmets 1-4, with helmet 4 being on thebottom of the vertically stacked arrangement. Accordingly, when the nexthelmet is released from rod A, the kiosk will know that it is helmet 4that is released.

In some implementations, the method 400 can also include the kiosktransmitting, via the communications module, an indication to the serverthat the helmet was successfully released. Responsive to this indicationthe server may remove the released helmet from the kiosk's inventory.The kiosk may also notify the server when a helmet is returned to thekiosk. Upon a predetermined number of helmets have been rented (or thekiosk or server determines the kiosk's inventory is low) a notificationmay be sent from the server to a technician that the kiosk's inventoryis low and that the kiosk should be refilled with helmets. The methodmay also include the server or kiosk notifying a technician that thekiosk's return system is becoming full and should be emptied so thekiosk may continue to accept helmets.

The method 400 may also include receiving the helmet from a user. When auser returns a helmet, the user may check the helmet into the kioskusing the display of the transaction panel. In other implementations,the helmet may be automatically checked into the kiosk when the userplaces the helmet in the return drawer. The screen may notify the userof the length of time the helmet was rented and the cost for havingrented the helmet. Responsive to a user returning the helmet the kioskmay print the user a receipt with an internal receipt printer. In someembodiments, the kiosk may email the user a receipt via itscommunications module and the server.

The method 400 can also include checking the structural integrity of thereturned helmet. In some embodiments, checking the integrity of thehelmets may be automated and/or done by human inspection. In someembodiments, the automated system may use non-destructive testing todetermine if the helmet is structurally sound and/or damaged. Thenon-destructive testing methods may include at least one of resonancetesting and computer vision analyses in both the visual and non-visualspectrum (e.g., infrared and x-ray). For example, the automated systemmay include a system that photographs the helmets and uses computervision to find cracks, scuffs and/or vandalism. In some embodiment, thesystem may send the helmet for human inspection if the automated systemdetects a fault in the helmet.

The method 400 can also include cleaning the helmet. In someembodiments, the helmets may be heat sterilized. In other embodiments,the helmets may be sterilized with an ethylene oxide sterilizer. In someembodiments, the helmets are sanitized with disinfectants such as, butnot limited to, antimicrobial agents, alcohols, and other cleaningagents. In some implementations, the check of the helmet's structuralintegrity or the cleaning of the helmet may be conducted onsite andautomatically by the kiosk 102.

B. Release Mechanism for Use with a Helmet Rental Kiosk

FIG. 5A illustrates an example rod and driver mechanism with quickrelease. Described in greater detail in FIGS. 6-8B, but briefly, the endof the rods 204 opposite the end coupled with the driver mechanism 208can include a release mechanism 501. The release mechanism 501 mayrelease the helmets from the rod 204. The release mechanism 501 mayensure that only one helmet is released per helmet release cycle. Withinthe outer shaft of the rod 204, the rod 204 may include an inner shaft.The inner shaft can couple the release mechanism 501 with the drivermechanism 208.

In some embodiments, when fully loaded, the rod 204 may hold between 1and 20 helmets, between 5 and 20 helmets, between 10 and 20 helmets, ormore than 20 helmets. As further described in relation to FIG. 6, moststandard helmet designs include ventilation holes. Often the helmetsinclude a central ventilation hole. In some embodiments, the helmets arefed onto the rod 204 through the helmet's central ventilation hole.Stacking the helmets may increase the number of helmets that can bestored within the kiosk 102. The stacked configuration may decrease theenergy required to dispense a helmet by allowing gravity to do amajority of the work needed to force the helmet out of the kiosk 102.

FIG. 5B illustrates another example dispensing unit 500. The dispensingunit 500 includes a plurality of rods 204 coupled to an articulating arm503. The articulating arm 503 may be coupled to the interior of thekiosk 102. In some embodiments, the articulating arm 503 may beconfigured to swing out of the kiosk 102 when one of the side panels isopened. Swinging the articulating arm 503 out of the kiosk 102 mayfacilitate reloading the kiosk 102 with helmets.

As illustrated, three rods 204 are coupled to the articulating arm 503.In some embodiments, the number of rods 204 coupled to the articulatingarm 503 may be increased or decreased responsive to needed capacity ofthe kiosk 102.

FIG. 6 illustrates two helmets positioned on the lower end of a rod 204.More specifically, FIG. 6 illustrates a lower helmet 601 in the stagingarea 602 of the release mechanism 501 and an upper helmet 603 in thepre-staging area 604. To illustrate the rod's placement through thecentral ventilation hole 605 of the helmets 601 and 603, FIG. 6 providesa cross-sectional view of the helmets 601 and 603. As described above,helmets may have a plurality of ventilation holes and in someembodiments ventilation holes other than the central ventilation holemay be used to stack the helmets onto the rod 204. In yet otherembodiments, the helmets may be custom designed to include a customaccess port for the release mechanism 501 and rod 204.

Referring to FIG. 6, the release mechanism 501 may include an upper stop606 and a lower stop 607. In some implementations, the upper stop 606and the lower stop 607 can be referred to as upper and lower actuatingcouplers, respectively. The space between the upper stop 606 and thelower stop 607 may be referred to as the staging area 602. The areaabove the upper stop 606 may be referred to as the pre-staging area 604.In some embodiments, the length of the staging area 602 may beconfigured to support a predetermined brand of helmet. As illustrated inFIG. 6, in some embodiments, when one stop is deployed (e.g., stop 607in FIG. 6) the other stop is retracted (e.g. stop 606 in FIG. 6). Inother embodiments, the stops are independently controllable such thatboth stops may be deployed or retracted at the same time. In someembodiments, the middle collar 608 may be coupled to the lower end ofthe upper stop 606 and to the upper end of the lower stop 607. Themiddle collar 608 may be driven up and down by the above describeddriver mechanism 208. Accordingly, as the middle collar 608 is drivenup, the upper stop 606 is deployed and the lower stop is retracted.Alternatively, as the middle collar 608 is driven down, the upper stop606 is retracted and the lower stop is deployed.

When helmet 601 is in the staging area 602 it is ready to be dispensedfrom the kiosk 102. When a user requests a helmet, the middle collar 608may be driven up to retract the lower stop 607. The helmet 601 may thenfall off the rod 204 and exit the kiosk 102. Concurrent with theretraction of the lower stop 607 the upper stop 606 may be deployed. Theupper helmet 603 then falls to the deployed upper stop 606 as the lowerhelmet 601 is dispensed. In some embodiments, when a helmet is in thepre-staging area 604 or the staging area 602 the kiosk 102 may retrievethe helmet's identification number. In some embodiments, one or moreRFID modules may be placed in or on the rods 204 such that an RFID chipin the helmet may be read when the helmet is in the pre-staging 604 orstaging area 602. Once the kiosk 102 has identified the helmet, thehelmet may be positioned into the staging area 602 by retracting theupper stop 606 and deploy the lower stop 607. In some embodiments, thekiosk 102 may include sensors to determine if the helmet 601 wasproperly dispensed. For example, the kiosk 102 may include an infraredemitter and detector opposite one another. As the helmet 601 falls fromthe rods 204 the helmet may break the infrared beam between the emitterand detector. Responsive to determining that a helmet was not properlydispensed, the kiosk 102 may attempt to dispense a helmet from one ofthe other rods 204 or alert a technician that there may be a problemwith the kiosk 102.

FIGS. 7A-7C illustrate example embodiments of a release mechanism. Therelease mechanism 700 illustrated in FIG. 7A includes an upper stop 701and lower stop 702. Each stop includes two flukes 703. The flukes 703may be pivoted in and out of the rod 204. The upper stop 701 and lowerstop 702 may be driven by an internal rod (not shown) that connects toeach of the flukes 703. The flukes 703 may be coupled to the internalrod such that when one stop is deployed the other stop is retracted.

The release mechanism 710 of FIG. 7B can include an upper stop 711 and alower stop 712. As described above in relation to FIG. 6, the upper stop711 and the lower stop 712 are coupled to a middle collar 713. Themiddle collar 713 may be driven up and down, concurrently deploying andretracting the stops 711 and 712. Each leaf 714 of the stops may includea flexible polymer that allows the leaf 714 to be repeatedly deployedand retracted. The leaf 714 can deploy in a buckling motion as the leaf714 is compressed by the driving of the middle collar 713.

The upper stop 721 and lower stop 722 of release mechanism 720,illustrated in FIG. 7C, each include two deployable arms 723. Similar torelease mechanism 700, each of the arms 723 may be connected to acentral rod that deploys one stop while retracting the other stop. Insome embodiments, the upper stop 721 and the lower stop 722 arepositioned 90 degrees out of phase with one another. In someembodiments, both upper stop 721 and lower stop 722 remain deployedduring the dispensing of a helmet. In these embodiments, the abovedescribed ventilation hole of the helmet is oval in shape. The arms 723of release mechanism 720 may be configured such that the deployed arms723 create a stop greater in length than the short axis of the ovalventilation hole but shorter than the long axis of the oval ventilationhole. The rods 204 may be rotated allowing the helmet to pass by one ofthe stops 721 and 722 with each 90 degree rotation of the rod 204. Forexample, a helmet may rest on the upper stop 721 with the arms 723 ofthe upper stop 721 out of alignment with the longer axis of the ovalshaped ventilation hole. When the rod 204 is rotated 90 degrees, thearms 723 of the upper stop 721 may be in alignment with the longer axisof the oval shaped ventilation hole and the helmet may fall to the lowerstop 722, whose arms 723 are now out of alignment with the longer axisof the oval shaped ventilation hole. The process may be repeated torelease the helmet from the lower stop 722. The release mechanism 720also includes an RFID module 724. As described above, the RFID module724 may be included in any of the release mechanism designs. In someembodiments, more than one RFID module 724 can be included in therelease mechanism and/or dispensing rod. The RFID module 724 may becoupled internally or externally to the release mechanism and/or rods204.

FIGS. 8A-8B illustrate another example embodiment of a release mechanism800. In some embodiments, the release mechanism 800 is similar to therelease mechanism 501 described above. The release mechanism 800includes a middle collar 801 that may be driven up or down to deploy theleafs 802 of the upper stop 803 and the lower stop 804. The leafs 802are coupled with one another and to the middle collar 801 and rods 204by pins 806.

FIG. 8B illustrates release mechanism 800 with the middle collar 801cutaway to reveal the inner shaft 809. The inner shaft 809 runs througha hollow core that is defined by the rod 204. In some implementations,the inner shaft 809 is a coarsely-threaded rod. In some implementations,the rod 204 is referred to as the outer shaft. The inner shaft 809 canbe coupled with the middle collar 801 to drive the middle collar 801 upand down. In some implementations, the rod 204 includes a solenoid orother actuator to drive the inner shaft 809 and in other implementationsthe inner shaft 809 is driven by an actuator in the driver mechanism208. As the middle collar 801 is driven, up the upper stop 803 maybuckle and deploy the leafs 802 into a configuration non-parallel withthe rod 204 and the lower stop 804 may be retracted such that the leafs802 of the lower stop 804 become substantially parallel with the lengthof the rod 204. As the middle collar 801 is driven down, the upper stop803 may be retracted to become substantially parallel with the length ofthe rod 204 and the lower stop 804 may buckle and deploy. The leafs 802may pivot about the pins 806 when deployed or retracted. The leafs 802may be manufactured from plastics or metal. In some implementations, therelease mechanisms described herein include corrosive resistantstructural materials. For example, the release mechanism may includepowder coated or galvanized steels, aluminums, other metals, plastics,composites, or any combination thereof. In some implementations, theouter diameter of the rod 204 is about 0.5 inches (or less than thediameter of the vent holes of a helmet configured for use with thesystem 100). In some implementations, the leafs 802 deploy between about0.5 inches and about 2 inches or between about 1 inch and about 1.5inches.

FIG. 9 is a flow diagram of an example method 900 for dispensing ahelmet from a rental kiosk. The method 900 can include storing aplurality of helmets in the kiosk (step 901). The method can alsoinclude receiving, by the dispensing unit of the kiosk, a signal todispense a helmet (step 902). The method can further include driving, bythe dispensing unit, a collar toward a first actuating coupler torelease the helmet (step 903). In some implementations, the method 900can also include driving the collar toward a second actuating coupler toload a new helmet into a staging area of the dispensing unit (step 904).

As set forth above, the method 900 can include storing a plurality ofhelmets in a kiosk (step 901). The kiosk may be a kiosk similar to theabove described kiosk 102. The helmets may be stored on one or more rodsthat are configured to store the helmets in a vertical stackingarrangement. Each of the rods can include a release mechanism thatincludes a first and a second stop (also referred to as actuatingcouplers). On each of the rods one of the stops can be deployed,preventing the release of the helmet positioned at the bottom of thevertical arrangement.

At step 902, the method 900 can include receiving a signal to release ahelmet. The signal may be transmitted from the controller 110 or server106 described above in relation to FIG. 1. The signal may be generatedin response to a user requesting the helmet using the transaction panelof the kiosk. In some implementations, the request may be generated by abike share program associated with the kiosk. The signal may be receivedby the controller of the kiosk, which transmits the signal to thedispensing unit.

At step 903, the method 900 can include driving the collar toward thefirst stop. The dispensing unit may determine from which rod to releasethe helmet, and drive the collar of the chosen rod toward the firststop. In some implementations, the dispensing unit controls an actuatorassociated with each of the rods. The actuator may be coupled with thecollar through an inner shaft within a hollow core of the rod. The innershaft may be coupled to the collar so that as the actuator drives theinner shaft the inner shaft drives the collar. In this example, thehelmet may be held in place by a deployed, second stop (also referred toas a lower stop). As the dispensing unit drives the collard toward thefirst stop, the second stop begins to retract—releasing the helmet fromthe dispensing unit. As the dispensing unit continues to drive thecollard toward the first stop, the first stop can begin to buckle anddeploy—stopping a second helmet in the pre-staging area.

At step 904, the method 900 can include driving the collar toward thesecond stop. At this stage in the method 900, the second helmet is heldin place by the first stop. As the collar is driven toward the secondstop, the first stop retracts and the second helmet begins to fall. Thedispensing unit can continue to drive the collar toward the second stop,causing the second stop to buckle and deploy. The second stop can catchthe second helmet as it passes the first stop. The second helmet is nowin the staging area and ready to be released from the kiosk.

C. Computing and Network Environment

Prior to discussing specific embodiments of the present solution, it maybe helpful to describe aspects of the operating environment as well asassociated system components (e.g., hardware elements) in connectionwith the methods and systems described herein. Referring to FIG. 10A, anembodiment of a network environment is depicted. In brief overview, thenetwork environment includes one or more clients 10002 a-10002 n (alsogenerally referred to as local machine(s) 10002, client(s) 10002, clientnode(s) 10002, client machine(s) 10002, client computer(s) 10002, clientdevice(s) 10002, endpoint(s) 10002, or endpoint node(s) 1002) incommunication with one or more servers 1006 a-1006 n (also generallyreferred to as server(s) 1006, node 1006, or remote machine(s) 1006) viaone or more networks 1004. In some embodiments, a client 1002 has thecapacity to function as both a client node seeking access to resourcesprovided by a server and as a server providing access to hostedresources for other clients 1002 a-1002 n.

Although FIG. 10A shows a network 1004 between the clients 1002 and theservers 1006, the clients 1002 and the servers 1006 may be on the samenetwork 1004. In some embodiments, there are multiple networks 1004between the clients 1002 and the servers 1006. In one of theseembodiments, a network 1004′ (not shown) may be a private network and anetwork 1004 may be a public network. In another of these embodiments, anetwork 1004 may be a private network and a network 1004′ a publicnetwork. In still another of these embodiments, networks 1004 and 1004′may both be private networks.

The network 1004 may be connected via wired or wireless links Wiredlinks may include Digital Subscriber Line (DSL), coaxial cable lines, oroptical fiber lines. The wireless links may include BLUETOOTH, Wi-Fi,Worldwide Interoperability for Microwave Access (WiMAX), an infraredchannel or satellite band. The wireless links may also include anycellular network standards used to communicate among mobile devices,including standards that qualify as 1G, 2G, 3G, or 4G. The networkstandards may qualify as one or more generation of mobiletelecommunication standards by fulfilling a specification or standardssuch as the specifications maintained by International TelecommunicationUnion. The 3G standards, for example, may correspond to theInternational Mobile Telecommunications-2000 (IMT-2000) specification,and the 4G standards may correspond to the International MobileTelecommunications Advanced (IMT-Advanced) specification. Examples ofcellular network standards include AMPS, GSM, GPRS, UMTS, LTE, LTEAdvanced, Mobile WiMAX, and WiMAX-Advanced. Cellular network standardsmay use various channel access methods e.g. FDMA, TDMA, CDMA, or SDMA.In some embodiments, different types of data may be transmitted viadifferent links and standards. In other embodiments, the same types ofdata may be transmitted via different links and standards.

The network 1004 may be any type and/or form of network. Thegeographical scope of the network 1004 may vary widely and the network1004 can be a body area network (BAN), a personal area network (PAN), alocal-area network (LAN), e.g. Intranet, a metropolitan area network(MAN), a wide area network (WAN), or the Internet. The topology of thenetwork 1004 may be of any form and may include, e.g., any of thefollowing: point-to-point, bus, star, ring, mesh, or tree. The network1004 may be an overlay network which is virtual and sits on top of oneor more layers of other networks 1004′. The network 1004 may be of anysuch network topology as known to those ordinarily skilled in the artcapable of supporting the operations described herein. The network 1004may utilize different techniques and layers or stacks of protocols,including, e.g., the Ethernet protocol, the internet protocol suite(TCP/IP), the ATM (Asynchronous Transfer Mode) technique, the SONET(Synchronous Optical Networking) protocol, or the SDH (SynchronousDigital Hierarchy) protocol. The TCP/IP internet protocol suite mayinclude application layer, transport layer, internet layer (including,e.g., IPv6), or the link layer. The network 1004 may be a type of abroadcast network, a telecommunications network, a data communicationnetwork, or a computer network.

In some embodiments, the system may include multiple, logically-groupedservers 1006. In one of these embodiments, the logical group of serversmay be referred to as a server farm 3008 or a machine farm 3008. Inanother of these embodiments, the servers 1006 may be geographicallydispersed. In other embodiments, a machine farm 3008 may be administeredas a single entity. In still other embodiments, the machine farm 3008includes a plurality of machine farms 3008. The servers 1006 within eachmachine farm 3008 can be heterogeneous—one or more of the servers 1006or machines 1006 can operate according to one type of operating systemplatform (e.g., WINDOWS NT, manufactured by Microsoft Corp. of Redmond,Wash.), while one or more of the other servers 1006 can operate onaccording to another type of operating system platform (e.g., Unix,Linux, or Mac OS X).

In one embodiment, servers 1006 in the machine farm 3008 may be storedin high-density rack systems, along with associated storage systems, andlocated in an enterprise data center. In this embodiment, consolidatingthe servers 1006 in this way may improve system manageability, datasecurity, the physical security of the system, and system performance bylocating servers 1006 and high performance storage systems on localizedhigh performance networks. Centralizing the servers 1006 and storagesystems and coupling them with advanced system management tools allowsmore efficient use of server resources.

The servers 1006 of each machine farm 3008 do not need to be physicallyproximate to another server 1006 in the same machine farm 3008. Thus,the group of servers 1006 logically grouped as a machine farm 3008 maybe interconnected using a wide-area network (WAN) connection or ametropolitan-area network (MAN) connection. For example, a machine farm3008 may include servers 1006 physically located in different continentsor different regions of a continent, country, state, city, campus, orroom. Data transmission speeds between servers 1006 in the machine farm3008 can be increased if the servers 1006 are connected using alocal-area network (LAN) connection or some form of direct connection.Additionally, a heterogeneous machine farm 3008 may include one or moreservers 1006 operating according to a type of operating system, whileone or more other servers 1006 execute one or more types of hypervisorsrather than operating systems. In these embodiments, hypervisors may beused to emulate virtual hardware, partition physical hardware,virtualize physical hardware, and execute virtual machines that provideaccess to computing environments, allowing multiple operating systems torun concurrently on a host computer. Native hypervisors may run directlyon the host computer. Hypervisors may include VMware ESX/ESXi,manufactured by VMWare, Inc., of Palo Alto, Calif.; the Xen hypervisor,an open source product whose development is overseen by Citrix Systems,Inc.; the HYPER-V hypervisors provided by Microsoft or others. Hostedhypervisors may run within an operating system on a second softwarelevel. Examples of hosted hypervisors may include VMware Workstation andVIRTUALBOX.

Management of the machine farm 3008 may be de-centralized. For example,one or more servers 1006 may comprise components, subsystems and modulesto support one or more management services for the machine farm 3008. Inone of these embodiments, one or more servers 1006 provide functionalityfor management of dynamic data, including techniques for handlingfailover, data replication, and increasing the robustness of the machinefarm 3008. Each server 1006 may communicate with a persistent store and,in some embodiments, with a dynamic store.

Server 1006 may be a file server, application server, web server, proxyserver, appliance, network appliance, gateway, gateway server,virtualization server, deployment server, SSL VPN server, or firewall.In one embodiment, the server 1006 may be referred to as a remotemachine or a node. In another embodiment, a plurality of nodes 290 maybe in the path between any two communicating servers.

Referring to FIG. 10B, a cloud computing environment is depicted. Acloud computing environment may provide client 1002 with one or moreresources provided by a network environment. The cloud computingenvironment may include one or more clients 1002 a-1002 n, incommunication with the cloud 1008 over one or more networks 1004.Clients 1002 may include, e.g., thick clients, thin clients, and zeroclients. A thick client may provide at least some functionality evenwhen disconnected from the cloud 1008 or servers 1006. A thin client ora zero client may depend on the connection to the cloud 1008 or server1006 to provide functionality. A zero client may depend on the cloud1008 or other networks 1004 or servers 1006 to retrieve operating systemdata for the client device. The cloud 1008 may include back endplatforms, e.g., servers 1006, storage, server farms or data centers.

The cloud 1008 may be public, private, or hybrid. Public clouds mayinclude public servers 1006 that are maintained by third parties to theclients 1002 or the owners of the clients. The servers 1006 may belocated off-site in remote geographical locations as disclosed above orotherwise. Public clouds may be connected to the servers 1006 over apublic network. Private clouds may include private servers 1006 that arephysically maintained by clients 1002 or owners of clients. Privateclouds may be connected to the servers 1006 over a private network 1004.Hybrid clouds 1008 may include both the private and public networks 1004and servers 1006.

The cloud 1008 may also include a cloud based delivery, e.g. Software asa Service (SaaS) 1010, Platform as a Service (PaaS) 1012, andInfrastructure as a Service (IaaS) 1014. IaaS may refer to a userrenting the use of infrastructure resources that are needed during aspecified time period. IaaS providers may offer storage, networking,servers or virtualization resources from large pools, allowing the usersto quickly scale up by accessing more resources as needed. Examples ofIaaS include AMAZON WEB SERVICES provided by Amazon.com, Inc., ofSeattle, Wash., RACKSPACE CLOUD provided by Rackspace US, Inc., of SanAntonio, Tex., Google Compute Engine provided by Google Inc. of MountainView, Calif., or RIGHTSCALE provided by RightScale, Inc., of SantaBarbara, Calif. PaaS providers may offer functionality provided by IaaS,including, e.g., storage, networking, servers or virtualization, as wellas additional resources such as, e.g., the operating system, middleware,or runtime resources. Examples of PaaS include WINDOWS AZURE provided byMicrosoft Corporation of Redmond, Wash., Google App Engine provided byGoogle Inc., and HEROKU provided by Heroku, Inc. of San Francisco,Calif. SaaS providers may offer the resources that PaaS provides,including storage, networking, servers, virtualization, operatingsystem, middleware, or runtime resources. In some embodiments, SaaSproviders may offer additional resources including, e.g., data andapplication resources. Examples of SaaS include GOOGLE APPS provided byGoogle Inc., SALESFORCE provided by Salesforce.com Inc. of SanFrancisco, Calif., or OFFICE 365 provided by Microsoft Corporation.Examples of SaaS may also include data storage providers, e.g. DROPBOXprovided by Dropbox, Inc. of San Francisco, Calif., Microsoft SKYDRIVEprovided by Microsoft Corporation, Google Drive provided by Google Inc.,or Apple ICLOUD provided by Apple Inc. of Cupertino, Calif.

Clients 1002 may access IaaS resources with one or more IaaS standards,including, e.g., Amazon Elastic Compute Cloud (EC2), Open CloudComputing Interface (OCCI), Cloud Infrastructure Management Interface(CIMI), or OpenStack standards. Some IaaS standards may allow clientsaccess to resources over HTTP, and may use Representational StateTransfer (REST) protocol or Simple Object Access Protocol (SOAP).Clients 1002 may access PaaS resources with different PaaS interfaces.Some PaaS interfaces use HTTP packages, standard Java APIs, JavaMailAPI, Java Data Objects (JDO), Java Persistence API (JPA), Python APIs,web integration APIs for different programming languages including,e.g., Rack for Ruby, WSGI for Python, or PSGI for Perl, or other APIsthat may be built on REST, HTTP, XML, or other protocols. Clients 1002may access SaaS resources through the use of web-based user interfaces,provided by a web browser (e.g. GOOGLE CHROME, Microsoft INTERNETEXPLORER, or Mozilla Firefox provided by Mozilla Foundation of MountainView, Calif.). Clients 1002 may also access SaaS resources throughsmartphone or tablet applications, including, e.g., Salesforce SalesCloud, or Google Drive app. Clients 1002 may also access SaaS resourcesthrough the client operating system, including, e.g., Windows filesystem for DROPBOX.

In some embodiments, access to IaaS, PaaS, or SaaS resources may beauthenticated. For example, a server or authentication server mayauthenticate a user via security certificates, HTTPS, or API keys. APIkeys may include various encryption standards such as, e.g., AdvancedEncryption Standard (AES). Data resources may be sent over TransportLayer Security (TLS) or Secure Sockets Layer (SSL).

The client 1002 and server 1006 may be deployed as and/or executed onany type and form of computing device, e.g. a computer, network deviceor appliance capable of communicating on any type and form of networkand performing the operations described herein. FIGS. 10C and 10D depictblock diagrams of a computing device 1000 useful for practicing anembodiment of the client 1002 or a server 1006. As shown in FIGS. 10Cand 10D, each computing device 1000 includes a central processing unit1021, and a main memory unit 1022. As shown in FIG. 10C, a computingdevice 1000 may include a storage device 1028, an installation device1016, a network interface 1018, an I/O controller 1023, display devices1024 a-1024 n, a keyboard 1026 and a pointing device 1027, e.g. a mouse.The storage device 1028 may include, without limitation, an operatingsystem, software, and software 1020 for the backend server of a helmetrental kiosk. As shown in FIG. 10D, each computing device 1000 may alsoinclude additional optional elements, e.g. a memory port 1003, a bridge1070, one or more input/output devices 1030 a-1030 n (generally referredto using reference numeral 1030), and a cache memory 1040 incommunication with the central processing unit 1021.

The central processing unit 1021 is any logic circuitry that responds toand processes instructions fetched from the main memory unit 1022. Inmany embodiments, the central processing unit 1021 is provided by amicroprocessor unit, e.g.: those manufactured by Intel Corporation ofMountain View, Calif.; those manufactured by Motorola Corporation ofSchaumburg, Ill.; the ARM processor and TEGRA system on a chip (SoC)manufactured by Nvidia of Santa Clara, Calif.; the POWER7 processor,those manufactured by International Business Machines of White Plains,N.Y.; or those manufactured by Advanced Micro Devices of Sunnyvale,Calif. The computing device 1000 may be based on any of theseprocessors, or any other processor capable of operating as describedherein. The central processing unit 1021 may utilize instruction levelparallelism, thread level parallelism, different levels of cache, andmulti-core processors. A multi-core processor may include two or moreprocessing units on a single computing component. Examples of amulti-core processors include the AMD PHENOM IIX2, INTEL CORE i5 andINTEL CORE i7.

Main memory unit 1022 may include one or more memory chips capable ofstoring data and allowing any storage location to be directly accessedby the microprocessor 1021. Main memory unit 1022 may be volatile andfaster than storage 1028 memory. Main memory units 1022 may be Dynamicrandom access memory (DRAM) or any variants, including static randomaccess memory (SRAM), Burst SRAM or SynchBurst SRAM (BSRAM), Fast PageMode DRAM (FPM DRAM), Enhanced DRAM (EDRAM), Extended Data Output RAM(EDO RAM), Extended Data Output DRAM (EDO DRAM), Burst Extended DataOutput DRAM (BEDO DRAM), Single Data Rate Synchronous DRAM (SDR SDRAM),Double Data Rate SDRAM (DDR SDRAM), Direct Rambus DRAM (DRDRAM), orExtreme Data Rate DRAM (XDR DRAM). In some embodiments, the main memory1022 or the storage 1028 may be non-volatile; e.g., non-volatile readaccess memory (NVRAM), flash memory non-volatile static RAM (nvSRAM),Ferroelectric RAM (FeRAM), Magnetoresistive RAM (MRAM), Phase-changememory (PRAM), conductive-bridging RAM (CBRAM),Silicon-Oxide-Nitride-Oxide-Silicon (SONOS), Resistive RAM (RRAM),Racetrack, Nano-RAM (NRAM), or Millipede memory. The main memory 1022may be based on any of the above described memory chips, or any otheravailable memory chips capable of operating as described herein. In theembodiment shown in FIG. 10C, the processor 1021 communicates with mainmemory 1022 via a system bus 1050 (described in more detail below). FIG.10D depicts an embodiment of a computing device 1000 in which theprocessor communicates directly with main memory 1022 via a memory port1003. For example, in FIG. 10D the main memory 1022 may be DRDRAM.

FIG. 10D depicts an embodiment in which the main processor 1021communicates directly with cache memory 1040 via a secondary bus,sometimes referred to as a backside bus. In other embodiments, the mainprocessor 1021 communicates with cache memory 1040 using the system bus1050. Cache memory 1040 typically has a faster response time than mainmemory 1022 and is typically provided by SRAM, BSRAM, or EDRAM. In theembodiment shown in FIG. 10D, the processor 1021 communicates withvarious I/O devices 1030 via a local system bus 1050. Various buses maybe used to connect the central processing unit 1021 to any of the I/Odevices 1030, including a PCI bus, a PCI-X bus, or a PCI-Express bus, ora NuBus. For embodiments in which the I/O device is a video display1024, the processor 1021 may use an Advanced Graphics Port (AGP) tocommunicate with the display 1024 or the I/O controller 1023 for thedisplay 1024. FIG. 10D depicts an embodiment of a computer 1000 in whichthe main processor 1021 communicates directly with I/O device 1030 b orother processors 1021′ via HYPERTRANSPORT, RAPIDIO, or INFINIBANDcommunications technology. FIG. 10D also depicts an embodiment in whichlocal busses and direct communication are mixed: the processor 1021communicates with I/O device 1030 a using a local interconnect bus whilecommunicating with I/O device 1030 b directly.

A wide variety of I/O devices 1030 a-1030 n may be present in thecomputing device 1000. Input devices may include keyboards, mice,trackpads, trackballs, touchpads, touch mice, multi-touch touchpads andtouch mice, microphones, multi-array microphones, drawing tablets,cameras, single-lens reflex camera (SLR), digital SLR (DSLR), CMOSsensors, accelerometers, infrared optical sensors, pressure sensors,magnetometer sensors, angular rate sensors, depth sensors, proximitysensors, ambient light sensors, gyroscopic sensors, or other sensors.Output devices may include video displays, graphical displays, speakers,headphones, inkjet printers, laser printers, and 3D printers.

Devices 1030 a-1030 n may include a combination of multiple input oroutput devices, including, e.g., Microsoft KINECT, Nintendo Wiimote forthe WII, Nintendo WII U GAMEPAD, or Apple IPHONE. Some devices 1030a-1030 n allow gesture recognition inputs through combining some of theinputs and outputs. Some devices 1030 a-1030 n provides for facialrecognition which may be utilized as an input for different purposesincluding authentication and other commands. Some devices 1030 a-1030 nprovides for voice recognition and inputs, including, e.g., MicrosoftKINECT, SIRI for IPHONE by Apple, Google Now or Google Voice Search.

Additional devices 1030 a-1030 n have both input and outputcapabilities, including, e.g., haptic feedback devices, touchscreendisplays, or multi-touch displays. Touchscreen, multi-touch displays,touchpads, touch mice, or other touch sensing devices may use differenttechnologies to sense touch, including, e.g., capacitive, surfacecapacitive, projected capacitive touch (PCT), in-cell capacitive,resistive, infrared, waveguide, dispersive signal touch (DST), in-celloptical, surface acoustic wave (SAW), bending wave touch (BWT), orforce-based sensing technologies. Some multi-touch devices may allow twoor more contact points with the surface, allowing advanced functionalityincluding, e.g., pinch, spread, rotate, scroll, or other gestures. Sometouchscreen devices, including, e.g., Microsoft PIXELSENSE orMulti-Touch Collaboration Wall, may have larger surfaces, such as on atable-top or on a wall, and may also interact with other electronicdevices. Some I/O devices 1030 a-1030 n, display devices 1024 a-1024 nor group of devices may be augment reality devices. The I/O devices maybe controlled by an I/O controller 1023 as shown in FIG. 10C. The I/Ocontroller may control one or more I/O devices, such as, e.g., akeyboard 1026 and a pointing device 1027, e.g., a mouse or optical pen.Furthermore, an I/O device may also provide storage and/or aninstallation medium 1016 for the computing device 1000. In still otherembodiments, the computing device 1000 may provide USB connections (notshown) to receive handheld USB storage devices. In further embodiments,an I/O device 1030 may be a bridge between the system bus 1050 and anexternal communication bus, e.g. a USB bus, a SCSI bus, a FireWire bus,an Ethernet bus, a Gigabit Ethernet bus, a Fibre Channel bus, or aThunderbolt bus.

In some embodiments, display devices 1024 a-1024 n may be connected toI/O controller 1023. Display devices may include, e.g., liquid crystaldisplays (LCD), thin film transistor LCD (TFT-LCD), blue phase LCD,electronic papers (e-ink) displays, flexile displays, light emittingdiode displays (LED), digital light processing (DLP) displays, liquidcrystal on silicon (LCOS) displays, organic light-emitting diode (OLED)displays, active-matrix organic light-emitting diode (AMOLED) displays,liquid crystal laser displays, time-multiplexed optical shutter (TMOS)displays, or 3D displays. Examples of 3D displays may use, e.g.stereoscopy, polarization filters, active shutters, or autostereoscopy.Display devices 1024 a-1024 n may also be a head-mounted display (HMD).In some embodiments, display devices 1024 a-1024 n or the correspondingI/O controllers 1023 may be controlled through or have hardware supportfor OPENGL or DIRECTX API or other graphics libraries.

In some embodiments, the computing device 1000 may include or connect tomultiple display devices 1024 a-1024 n, which each may be of the same ordifferent type and/or form. As such, any of the I/O devices 1030 a-1030n and/or the I/O controller 1023 may include any type and/or form ofsuitable hardware, software, or combination of hardware and software tosupport, enable or provide for the connection and use of multipledisplay devices 1024 a-1024 n by the computing device 1000. For example,the computing device 1000 may include any type and/or form of videoadapter, video card, driver, and/or library to interface, communicate,connect or otherwise use the display devices 1024 a-1024 n. In oneembodiment, a video adapter may include multiple connectors to interfaceto multiple display devices 1024 a-1024 n. In other embodiments, thecomputing device 1000 may include multiple video adapters, with eachvideo adapter connected to one or more of the display devices 1024a-1024 n. In some embodiments, any portion of the operating system ofthe computing device 1000 may be configured for using multiple displays1024 a-1024 n. In other embodiments, one or more of the display devices1024 a-1024 n may be provided by one or more other computing devices1000 a or 1000 b connected to the computing device 1000, via the network1004. In some embodiments software may be designed and constructed touse another computer's display device as a second display device 1024 afor the computing device 1000. For example, in one embodiment, an AppleiPad may connect to a computing device 1000 and use the display of thedevice 1000 as an additional display screen that may be used as anextended desktop. One ordinarily skilled in the art will recognize andappreciate the various ways and embodiments that a computing device 1000may be configured to have multiple display devices 1024 a-1024 n.

Referring again to FIG. 10C, the computing device 1000 may comprise astorage device 1028 (e.g. one or more hard disk drives or redundantarrays of independent disks) for storing an operating system or otherrelated software, and for storing application software programs such asany program related to the software 1020 for the experiment trackersystem. Examples of storage device 1028 include, e.g., hard disk drive(HDD); optical drive including CD drive, DVD drive, or BLU-RAY drive;solid-state drive (SSD); USB flash drive; or any other device suitablefor storing data. Some storage devices may include multiple volatile andnon-volatile memories, including, e.g., solid state hybrid drives thatcombine hard disks with solid state cache. Some storage device 1028 maybe non-volatile, mutable, or read-only. Some storage device 1028 may beinternal and connect to the computing device 1000 via a bus 1050. Somestorage device 1028 may be external and connect to the computing device1000 via a I/O device 1030 that provides an external bus. Some storagedevice 1028 may connect to the computing device 1000 via the networkinterface 1018 over a network 1004, including, e.g., the Remote Disk forMACBOOK AIR by Apple. Some client devices 1000 may not require anon-volatile storage device 1028 and may be thin clients or zero clients1002. Some storage device 1028 may also be used as a installation device1016, and may be suitable for installing software and programs.Additionally, the operating system and the software can be run from abootable medium, for example, a bootable CD, e.g. KNOPPIX, a bootable CDfor GNU/Linux that is available as a GNU/Linux distribution fromknoppix.net.

Client device 1000 may also install software or application from anapplication distribution platform. Examples of application distributionplatforms include the App Store for iOS provided by Apple, Inc., the MacApp Store provided by Apple, Inc., GOOGLE PLAY for Android OS providedby Google Inc., Chrome Webstore for CHROME OS provided by Google Inc.,and Amazon Appstore for Android OS and KINDLE FIRE provided byAmazon.com, Inc. An application distribution platform may facilitateinstallation of software on a client device 1002. An applicationdistribution platform may include a repository of applications on aserver 1006 or a cloud 1008, which the clients 1002 a-1002 n may accessover a network 1004. An application distribution platform may includeapplication developed and provided by various developers. A user of aclient device 1002 may select, purchase and/or download an applicationvia the application distribution platform.

Furthermore, the computing device 1000 may include a network interface1018 to interface to the network 1004 through a variety of connectionsincluding, but not limited to, standard telephone lines LAN or WAN links(e.g., 802.11, T1, T3, Gigabit Ethernet, Infiniband), broadbandconnections (e.g., ISDN, Frame Relay, ATM, Gigabit Ethernet,Ethernet-over-SONET, ADSL, VDSL, BPON, GPON, fiber optical includingFiOS), wireless connections, or some combination of any or all of theabove. Connections can be established using a variety of communicationprotocols (e.g., TCP/IP, Ethernet, ARCNET, SONET, SDH, Fiber DistributedData Interface (FDDI), IEEE 802.11E/b/g/n/ac CDMA, GSM, WiMax and directasynchronous connections). In one embodiment, the computing device 1000communicates with other computing devices 1000′ via any type and/or formof gateway or tunneling protocol e.g. Secure Socket Layer (SSL) orTransport Layer Security (TLS), or the Citrix Gateway Protocolmanufactured by Citrix Systems, Inc. of Ft. Lauderdale, Fla. The networkinterface 1018 may comprise a built-in network adapter, networkinterface card, PCMCIA network card, EXPRESSCARD network card, card busnetwork adapter, wireless network adapter, USB network adapter, modem orany other device suitable for interfacing the computing device 1000 toany type of network capable of communication and performing theoperations described herein.

A computing device 1000 of the sort depicted in FIGS. 10C and 10D mayoperate under the control of an operating system, which controlsscheduling of tasks and access to system resources. The computing device1000 can be running any operating system such as any of the versions ofthe MICROSOFT WINDOWS operating systems, the different releases of theUnix and Linux operating systems, any version of the MAC OS forMacintosh computers, any embedded operating system, any real-timeoperating system, any open source operating system, any proprietaryoperating system, any operating systems for mobile computing devices, orany other operating system capable of running on the computing deviceand performing the operations described herein. Typical operatingsystems include, but are not limited to: WINDOWS 2000, WINDOWS Server2012, WINDOWS CE, WINDOWS Phone, WINDOWS XP, WINDOWS VISTA, and WINDOWS7, WINDOWS RT, and WINDOWS 8 all of which are manufactured by MicrosoftCorporation of Redmond, Wash.; MAC OS and iOS, manufactured by Apple,Inc. of Cupertino, Calif.; and Linux, a freely-available operatingsystem, e.g. Linux Mint distribution (“distro”) or Ubuntu, distributedby Canonical Ltd. of London, United Kingom; or Unix or other Unix-likederivative operating systems; and Android, designed by Google, ofMountain View, Calif., among others. Some operating systems, including,e.g., the CHROME OS by Google, may be used on zero clients or thinclients, including, e.g., CHROMEBOOKS.

The computer system 1000 can be any workstation, telephone, desktopcomputer, laptop or notebook computer, netbook, ULTRABOOK, tablet,server, handheld computer, mobile telephone, smartphone or otherportable telecommunications device, media playing device, a gamingsystem, mobile computing device, or any other type and/or form ofcomputing, telecommunications or media device that is capable ofcommunication. The computer system 1000 has sufficient processor powerand memory capacity to perform the operations described herein. In someembodiments, the computing device 1000 may have different processors,operating systems, and input devices consistent with the device. TheSamsung GALAXY smartphones, e.g., operate under the control of Androidoperating system developed by Google, Inc. GALAXY smartphones receiveinput via a touch interface.

In some embodiments, the computing device 1000 is a gaming system. Forexample, the computer system 1000 may comprise a PLAYSTATION 3, orPERSONAL PLAYSTATION PORTABLE (PSP), or a PLAYSTATION VITA devicemanufactured by the Sony Corporation of Tokyo, Japan, a NINTENDO DS,NINTENDO 3DS, NINTENDO WII, or a NINTENDO WII U device manufactured byNintendo Co., Ltd., of Kyoto, Japan, an XBOX 360 device manufactured bythe Microsoft Corporation of Redmond, Wash.

In some embodiments, the computing device 1000 is a digital audio playersuch as the Apple IPOD, IPOD Touch, and IPOD NANO lines of devices,manufactured by Apple Computer of Cupertino, Calif. Some digital audioplayers may have other functionality, including, e.g., a gaming systemor any functionality made available by an application from a digitalapplication distribution platform. For example, the IPOD Touch mayaccess the Apple App Store. In some embodiments, the computing device1000 is a portable media player or digital audio player supporting fileformats including, but not limited to, MP3, WAV, M4A/AAC, WMA ProtectedAAC, RIFF, Audible audiobook, Apple Lossless audio file formats and.mov, .m4v, and .mp4 MPEG-4 (H.264/MPEG-4 AVC) video file formats.

In some embodiments, the computing device 1000 is a tablet e.g. the IPADline of devices by Apple; GALAXY TAB family of devices by Samsung; orKINDLE FIRE, by Amazon.com, Inc. of Seattle, Wash. In other embodiments,the computing device 1000 is a eBook reader, e.g. the KINDLE family ofdevices by Amazon.com, or NOOK family of devices by Barnes & Noble, Inc.of New York City, New York.

In some embodiments, the communications device 1002 includes acombination of devices, e.g. a smartphone combined with a digital audioplayer or portable media player. For example, one of these embodimentsis a smartphone, e.g. the IPHONE family of smartphones manufactured byApple, Inc.; a Samsung GALAXY family of smartphones manufactured bySamsung, Inc; or a Motorola DROID family of smartphones. In yet anotherembodiment, the communications device 1002 is a laptop or desktopcomputer equipped with a web browser and a microphone and speakersystem, e.g. a telephony headset. In these embodiments, thecommunications devices 1002 are web-enabled and can receive and initiatephone calls. In some embodiments, a laptop or desktop computer is alsoequipped with a webcam or other video capture device that enables videochat and video call.

In some embodiments, the status of one or more machines 1002, 1006 inthe network 1004 is monitored, generally as part of network management.In one of these embodiments, the status of a machine may include anidentification of load information (e.g., the number of processes on themachine, CPU and memory utilization), of port information (e.g., thenumber of available communication ports and the port addresses), or ofsession status (e.g., the duration and type of processes, and whether aprocess is active or idle). In another of these embodiments, thisinformation may be identified by a plurality of metrics, and theplurality of metrics can be applied at least in part towards decisionsin load distribution, network traffic management, and network failurerecovery as well as any aspects of operations of the present solutiondescribed herein. Aspects of the operating environments and componentsdescribed above will become apparent in the context of the systems andmethods disclosed herein.

Having now described some illustrative implementations and embodiments,it is apparent that the foregoing is illustrative and not limiting,having been presented by way of example. In particular, although many ofthe examples presented herein involve specific combinations of methodacts or system elements, those acts and those elements may be combinedin other ways to accomplish the same objectives. Acts, elements andfeatures discussed only in connection with one embodiment are notintended to be excluded from a similar role in other implementations orembodiments.

The phraseology and terminology used herein is for the purpose ofdescription and should not be regarded as limiting. The use of“including” “comprising” “having” “containing” “involving”“characterized by” “characterized in that” and variations thereofherein, is meant to encompass the items listed thereafter, equivalentsthereof, and additional items, as well as alternate embodimentsconsisting of the items listed thereafter exclusively. In oneembodiment, the systems and methods described herein consist of one,each combination of more than one, or all of the described elements,acts, or components.

Any references to embodiments or elements or acts of the systems andmethods herein referred to in the singular may also embrace embodimentsincluding a plurality of these elements, and any references in plural toany embodiment or element or act herein may also embrace embodimentsincluding only a single element. References in the singular or pluralform are not intended to limit the presently disclosed systems ormethods, their components, acts, or elements to single or pluralconfigurations. References to any act or element being based on anyinformation, act or element may include embodiments where the act orelement is based at least in part on any information, act, or element.

Any implementation disclosed herein may be combined with any otherimplementation or embodiment, and references to “an implementation,”“some implementations,” “an alternate implementation,” “variousimplementation,” “one implementation” or the like are not necessarilymutually exclusive and are intended to indicate that a particularfeature, structure, or characteristic described in connection with theembodiment may be included in at least one implementation or embodiment.Such terms as used herein are not necessarily all referring to the sameembodiment. Any embodiment may be combined with any other embodiment,inclusively or exclusively, in any manner consistent with the aspectsand embodiments disclosed herein.

References to “or” may be construed as inclusive so that any termsdescribed using “or” may indicate any of a single, more than one, andall of the described terms.

Where technical features in the drawings, detailed description or anyclaim are followed by reference signs, the reference signs have beenincluded for the sole purpose of increasing the intelligibility of thedrawings, detailed description, and claims. Accordingly, neither thereference signs nor their absence have any limiting effect on the scopeof any claim elements.

The systems and methods described herein may be embodied in otherspecific forms without departing from the characteristics thereof. Forexample, the criteria, combination indicators and queries can beprovided in Boolean form or other languages, tree structures, orcontextual query languages or grammar forms. Content can be identifiedfor display on web pages or with other information resources such aswebsites, domain names, or uniform resource locators. Further,identifying content for display with web pages or other informationresources can include identifying content as being suitable for display(e.g., as a candidate for display) with the information resource. Thesuitable content can be evaluated against other suitable content, e.g.,in an auction, with a winning content item selected from the auction andprovided for display with a rendering of a web page or other informationresource. The foregoing embodiments are illustrative rather thanlimiting of the described systems and methods. Scope of the systems andmethods described herein is thus indicated by the appended claims,rather than the foregoing description, and changes that come within themeaning and range of equivalency of the claims are embraced therein.

What is claimed:
 1. A system comprising: a dispensing unit comprisingone or more vertical rods configured to store helmets in a verticalarrangement, each of the one or more vertical rods further comprising: afirst shaft configured to slide through an opening in a helmet, thefirst shaft defining a hollow core and comprising a first actuatingcoupler, a second actuating coupler, and a collar, the collar couplingthe first actuating coupler with the second actuating coupler; a secondshaft disposed within the hollow core of the first shaft and coupledwith the collar of the first shaft; and an actuator coupled to thesecond shaft, the actuator configured to drive the collar toward thesecond actuating coupler to deploy the second actuating coupler and toretract the first actuating coupler and the actuator configured to drivethe collar toward the first actuating coupler to deploy the firstactuating coupler and to retract the second actuating coupler.
 2. Thesystem of claim 1, further comprising a quick release mechanism couplingeach of the one or more vertical rods to the dispensing unit.
 3. Thesystem of claim 1, wherein each of the first and second actuatingcouplers comprise a plurality of leafs that deploy substantiallynon-parallel to the first shaft to limit the movement of the helmetalong the first shaft.
 4. The system of claim 1, wherein each of thefirst and second actuating couplers comprise at least one fluke thatdeploys to limit the movement of the helmet along the first shaft. 5.The system of claim 1, wherein the dispensing unit further comprises atleast three vertical rods.
 6. The system of claim 1, wherein each of theone or more vertical rods is configured to hold at least six helmets. 7.The system of claim 1, wherein the actuator is a solenoid.
 8. The systemof claim 1, wherein the actuator is a servo.
 9. The system of claim 1,wherein one or more vertical rods further comprise a RFID reader toidentify each of the stored helmets.
 10. The system of claim 1, whereinthe one or more vertical rods are configured to support a helmet betweenthe first and second actuating couplers.
 11. A method of dispensing ahelmet, the method comprising: storing a plurality of helmets in adispensing unit, the dispensing unit comprising one or more verticalrods configured to store helmets in a vertical arrangement and each ofthe one or more vertical rods further comprising a first actuatingcoupler and a collar, the collar coupling the first actuating couplerwith the second actuating coupler; receiving, by the dispensing unit, asignal to dispense a helmet; and driving, by the dispensing unit, thecollar toward the first actuating coupler to release the helmet.
 12. Themethod of claim 11, further comprising driving the collar toward asecond actuating coupler to load the helmet into a staging area.
 13. Themethod of claim 12, further comprising determining, by the dispensingunit, an identification number of the helmet when the helmet is in thestaging area.
 14. The method of claim 11, further comprising refillingthe dispensing unit by replacing at least one of the one or morevertical rods with a new vertical rod stocked with helmets.
 15. Themethod of claim 11, further comprising transmitting to a server anindication that the helmet was dispensed.
 16. The method of claim 11,further comprising transmitting an indication that a number of helmetsstored in the dispensing unit is below a predetermined threshold or asecond indication that a number of helmets returned is above a secondpredetermined threshold.
 17. The method of claim 11, further comprisingreceiving the signal from a bike sharing system.
 18. The method of claim11, further comprising driving the collar toward the second actuatingcoupler with a solenoid or a servo.
 19. The method of claim 11, wheredriving the collar toward the second actuating coupler deploys thesecond actuating coupler.
 20. The method of claim 11, where driving thecollar toward the second actuating coupler retracts the first actuatingcoupler.